using System;
using Microsoft.Xna.Framework;
using System.Collections.Generic;

namespace Jogos
{
    static class GeradorAleatorio
    {

        private static Random r = new Random();

        
        public static float GeraFloat(float min, float max)
        {
            return (float)GeraDouble(min, max);
        }

        public static double GeraDouble(double min, double max)
        {
            return r.NextDouble() * (max - min) + min;
        }

        public static int GeraInt(int min, int max)
        {
            return (int)(GeraDouble(min, max) + 0.5);
        }

        public static Color GeraCorClara()
        {
            int r = GeradorAleatorio.GeraInt(128, 255);
            int g = GeradorAleatorio.GeraInt(128, 255);
            int b = GeradorAleatorio.GeraInt(128, 255);

            return new Color(r, g, b);
        }


        //public static Color GeraCor(List<Color> coresPossiveis)
        //cores fixas, com um array
        public static Color GeraCor(Color[] coresPossiveis)
        {
            //int indiceCor = GeradorAleatorio.GeraInt(0, coresPossiveis.Count - 1);
            int indiceCor = GeradorAleatorio.GeraInt(0, coresPossiveis.Length - 1);

            return coresPossiveis[indiceCor];
        }
    }
}
